package initialize

import (
	"github.com/gin-gonic/gin"
	"go-likaladi-shop/common/base_config"
	"shop-web/goods-web/router"
)

/*
InitRouters 函数用于初始化 Gin 路由
该函数会创建一个默认的 Gin 引擎，并设置版本前缀 /v1。
它会调用 InitUserRouter 函数注册用户相关的路由。
最终返回初始化后的路由引擎。

方法首字母小写，不进行提供外部访问，只提供当前目录下的所有文件访问
*/
func InitRouters() *gin.Engine {
	// 创建一个默认的 Gin 引擎，它会自动启用 Logger 和 Recovery 中间件
	engine := gin.Default()
	//配置支持跨域请求
	engine.Use(base_config.CorsMiddleware())

	healthGroup := engine.Group("")
	router.InitCheckHealthRouter(healthGroup)

	// 创建一个路由组，所有的路由都将以 /v1 开头
	routerGroup := engine.Group("/g/v1")

	// 调用 InitBannerRouter函数，初始化用户相关的路由
	router.InitBannerRouter(routerGroup)

	// 返回初始化完成的 Gin 引擎
	return engine
}
